package com.cjkj.equipment.mapper;

import com.cjkj.equipment.domain.TEquipmentInfo;
import com.cjkj.equipment.domain.dto.EquipmentDataReq;
import com.cjkj.equipment.domain.vo.EquipmentDataVo;
import com.cjkj.equipment.domain.vo.EquipmentExportVo;

import java.util.List;

/**
 * 设备信息Mapper接口
 * 
 * @author cjkj
 * @date 2024-08-26
 */
public interface TEquipmentInfoMapper 
{
    /**
     * 查询设备信息
     * 
     * @param id 设备信息主键
     * @return 设备信息
     */
    TEquipmentInfo selectTEquipmentInfoById(String id);

    /**
     * 根据设备编号查询
     *
     * @param equipmentNo 设备编号
     * @return 设备信息
     */
    TEquipmentInfo selectTEquipmentInfoByNo(String equipmentNo);

    /**
     * 查询设备信息列表
     * 
     * @param req 参数信息
     * @return 设备信息集合
     */
    List<EquipmentDataVo> selectTEquipmentInfoList(EquipmentDataReq req);
    List<EquipmentExportVo> selectTEquipmentExportList(EquipmentDataReq req);

    /**
     * 新增设备信息
     * 
     * @param tEquipmentInfo 设备信息
     * @return 结果
     */
    int insertTEquipmentInfo(TEquipmentInfo tEquipmentInfo);

    /**
     * 修改设备信息
     * 
     * @param tEquipmentInfo 设备信息
     * @return 结果
     */
    int updateTEquipmentInfo(TEquipmentInfo tEquipmentInfo);

    /**
     * 删除设备信息
     * 
     * @param id 设备信息主键
     * @return 结果
     */
    int deleteTEquipmentInfoById(String id);

    /**
     * 批量删除设备信息
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int deleteTEquipmentInfoByIds(String[] ids);
}
